package cn.csc.module.pay.convert.bank;

import java.util.*;

import cn.csc.framework.common.pojo.PageResult;

import cn.csc.module.pay.controller.admin.fund.vo.PayFundPageReqVO;
import cn.csc.module.pay.controller.app.jzb.vo.*;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import cn.csc.module.pay.controller.admin.bank.vo.*;
import cn.csc.module.pay.dal.dataobject.bank.PayBankDO;

/**
 * 资金账户绑定的银行卡 Convert
 *
 * @author 华南城
 */
@Mapper
public interface PayBankConvert {

    PayBankConvert INSTANCE = Mappers.getMapper(PayBankConvert.class);

    PayBankDO convert(PayBankCreateReqVO bean);

    PayBankDO convert(PayBankUpdateReqVO bean);

    PayBankRespVO convert(PayBankDO bean);

    List<PayBankRespVO> convertList(List<PayBankDO> list);

    PageResult<PayBankRespVO> convertPage(PageResult<PayBankDO> page);

    List<PayBankExcelVO> convertList02(List<PayBankDO> list);

    PayBankCreateReqVO convert(BindUnionPayWithCheckCorpReqVO bean);

    PayBankCreateReqVO convert(BindSmallAmountWithCheckCorpReqVO bean);

    PayFundPageReqVO convert(CheckAmountWithCorpReqVO bean);

    PayFundPageReqVO convertFund(BindSmallAmountWithCheckCorpReqVO bean);

    PayFundPageReqVO convertFund(BindUnionPayWithCheckCorpReqVO bean);

    PayFundPageReqVO convertFund(MemberBindQueryReqVO bean);

    PayFundPageReqVO convertFund(UnbindRelateAcctReqVO bean);

    PayFundPageReqVO convertFund(CheckMsgCodeWithCorpReqVO bean);

}
